﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using XF.Meeting.Entity.CommonEntity;
using XF.Meeting.Entity.dbEntity;
using XF.Meeting.Entity.DTO;
using XF.Meeting.Entity.Query;
using XF.Meeting.Entity.View;

namespace XF.Sugar.IService
{
   public partial interface IUserInfoService
    {
        Task<AuthInfo> Login(string userName,string password);
        Task<AuthInfo> Login(string phone);
        Task<bool> UpdatePassword(string username, string password);
        Task<(bool, string)> InsertUserInfo(UserInfo user);
        Task<(bool, string)> UpdateUserInfo(UserInfo entity);
        Task<bool> DeleteUserInfoByID(UserInfo entity);
        Task<UserInfo> GetUserInfoByID(UserQuery query);
        Task<PageList<UserInfoForSearch>> GetUserInfoListByRID(UserQuery query);
        Task<PageList<UserInfoForSearch>> GetUserInfoListByKey(UserQuery query);
        Task<PageList<UserInfo>> GetUserInfoList(UserQuery query);
        Task<UserIntegral> GetUserIntegral(UserQuery query);
        Task<(bool, string)> UpdateUserIntegral(UserIntegral entity);
        Task<PageList<UserInfoForSearch>> GetUserInfoListByRIDForUpdate(UserQuery query);
        Task<(bool, string)> ADuserSYNC();
        Task<(bool, string)> UpdateUserRegional(UserInfo entity);
        Task<PageList<WhiteList>> GetWhiteList(UserQuery query);
        Task<(bool, string)> InsertUserToWhiteList(WhiteListUser entity);
        
        Task<(bool, string)> UpdateToWhiteListUserMsg(WhiteListUser entity);
        Task<(bool, string)> UpdateToWhiteListUserSchedule(WhiteListUser entity);
        Task<(bool, string)> DeleteToWhiteListUser(WhiteListUser entity);

    }
}
